package singleton;

/**
 * 懒汉式（synchronized修饰代码块），线程不安全
 * 锁的粒度虽然小，对代码块加了 synchronized 来保证多线程下的线程安全，但是依旧还是会出现和第二种未加锁的问题一样，线程不安全。
 */
public class SingleTon4 {

    private static SingleTon4 instance;

    private SingleTon4(){

    }

    public static SingleTon4 getInstance(){
        if(null == instance){
            try{
                Thread.sleep(1);
            }catch (Exception e){
                e.getMessage();
            }
            synchronized(SingleTon4.class){
                instance = new SingleTon4();
            }
        }
        return instance;
    }
}
